package a.f;

import a.c.*;
import a.c.t;
import a.c.x;

import java.awt.*;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Map;

public class p
  extends o
{
  private x fg;
  private n gg;
  private x hg;
  private n ig;
  private Map jg = new HashMap();
  private Map kg = new HashMap();
  private x lg;
  private Map mg;
  private n ng;
  private Map og;
  private Map pg;
  private t qg;
  private dc rg;
  private static final Object sg;
  private static final Object tg;
  public static int ug;
  
  public p(o paramo)
  {
    this(paramo, paramo);
  }
  
  public p(t paramt, dc paramdc)
  {
    this.qg = paramt;
    this.rg = paramdc;
    this.fg = B();
    this.hg = B();
    this.gg = C();
    this.ig = C();
    this.lg = B();
    this.ng = C();
    this.og = new HashMap();
    this.mg = new HashMap();
    this.pg = new HashMap();
    e(paramt);
    c(paramt);
    a(paramt);
    k localk1 = paramt.c(rc.a);
    a(rc.a, new a.i.p()
    {
      private final k val$origNodeProvider;
      
      public Object get(Object paramAnonymousObject)
      {
        boolean bool = o.eg;
        if ((bool) || ((paramAnonymousObject instanceof e)))
        {
          Object localObject = p.this.lg.get(paramAnonymousObject);
          if (localObject != null)
          {
            if (!bool) {
              if (this.val$origNodeProvider != null) {
                return this.val$origNodeProvider.get(localObject);
              }
            }
            return localObject;
          }
        }
        return null;
      }
    });
    k localk2 = paramt.c(rc.b);
    a(rc.b, new a.i.p()
    {
      private final k val$origEdgeProvider;
      
      public Object get(Object paramAnonymousObject)
      {
        boolean bool = o.eg;
        if ((bool) || ((paramAnonymousObject instanceof d)))
        {
          Object localObject = p.this.ng.get(paramAnonymousObject);
          if (localObject != null)
          {
            if (!bool) {
              if (this.val$origEdgeProvider != null) {
                return this.val$origEdgeProvider.get(localObject);
              }
            }
            return localObject;
          }
        }
        return null;
      }
    });
  }
  
  private void a(t paramt)
  {
    boolean bool = o.eg;
    int j = o.dg;
    Object[] arrayOfObject = paramt.c();
    int i = 0;
    label185:
    do
    {
      if (i >= arrayOfObject.length) {
        break;
      }
      k localk = paramt.c(arrayOfObject[i]);
      if (!bool)
      {
        if (localk.getClass() == sg)
        {
          a(arrayOfObject[i], new f_((x)localk));
          if (bool) {
            continue;
          }
          if (j == 0) {
            break label185;
          }
        }
        if (bool) {}
      }
      else if (localk.getClass() == tg)
      {
        a(arrayOfObject[i], new e_((n)localk));
        if (bool) {
          continue;
        }
        if (j == 0) {
          break label185;
        }
      }
      if (!bool)
      {
        if ((localk instanceof i)) {
          a(arrayOfObject[i], new d_(localk));
        }
      }
      else
      {
        if (bool) {
          continue;
        }
        if (j == 0) {
          break label185;
        }
      }
      a(arrayOfObject[i], new c_(localk));
      i++;
    } while (j == 0);
  }
  
  private void c(t paramt)
  {
    boolean bool = o.eg;
    int i = o.dg;
    do
    {
      Iterator localIterator = paramt.b();
      while (i == 0)
      {
        if (!localIterator.hasNext()) {
          break;
        }
        k(localIterator.next());
      }
    } while (bool);
  }
  
  public d k(Object paramObject)
  {
    boolean bool = o.eg;
    int j = o.dg;
    e locale1 = (e)this.pg.get(this.qg.a(paramObject));
    e locale2 = (e)this.pg.get(this.qg.b(paramObject));
    d locald = a(locale1, locale2);
    this.ng.a(locald, paramObject);
    this.pg.put(paramObject, locald);
    this.gg.a(locald, new pb(this.rg.e(paramObject)));
    wb[] arrayOfwb1 = this.rg.g(paramObject);
    wb[] arrayOfwb2 = new wb[arrayOfwb1.length];
    int i = 0;
    do
    {
      if (i >= arrayOfwb2.length) {
        break;
      }
      mc localmc = new mc();
      localmc.a(arrayOfwb1[i].d());
      localmc.a(arrayOfwb1[i].e());
      localmc.a(arrayOfwb1[i].a());
      localmc.a(arrayOfwb1[i].b());
      arrayOfwb2[i] = localmc;
      this.kg.put(arrayOfwb2[i], locald);
      this.og.put(arrayOfwb2[i], arrayOfwb1[i]);
      i++;
      if ((!bool) && (j != 0)) {
        break label297;
      }
    } while (j == 0);
    if (!bool) {
      this.ig.a(locald, arrayOfwb2);
    }
    label297:
    return locald;
  }
  
  protected x.a_ f()
  {
    new x.a_()
    {
      public e a(a.c.q paramAnonymousq, e paramAnonymouse)
      {
        return p.this.l(paramAnonymouse);
      }
      
      public d a(a.c.q paramAnonymousq, e paramAnonymouse1, e paramAnonymouse2, d paramAnonymousd)
      {
        return p.this.k(paramAnonymousd);
      }
      
      public a.c.q a()
      {
        return new p(new q());
      }
      
      public void a(a.c.q paramAnonymousq1, a.c.q paramAnonymousq2) {}
      
      public void a(a.c.q paramAnonymousq1, a.c.q paramAnonymousq2, Map paramAnonymousMap1, Map paramAnonymousMap2) {}
    };
  }
  
  private void e(t paramt)
  {
    boolean bool = o.eg;
    int i = o.dg;
    do
    {
      Iterator localIterator = paramt.a();
      while (i == 0)
      {
        if (!localIterator.hasNext()) {
          break;
        }
        l(localIterator.next());
      }
    } while (bool);
  }
  
  public e l(Object paramObject)
  {
    boolean bool = o.eg;
    int j = o.dg;
    e locale = i();
    this.pg.put(paramObject, locale);
    this.lg.a(locale, paramObject);
    this.fg.a(locale, new sb(this.rg.d(paramObject)));
    xc[] arrayOfxc1 = this.rg.f(paramObject);
    xc[] arrayOfxc2 = new xc[arrayOfxc1.length];
    int i = 0;
    do
    {
      if (i >= arrayOfxc2.length) {
        break;
      }
      nc localnc = new nc();
      localnc.a(arrayOfxc1[i].d());
      localnc.a(arrayOfxc1[i].e());
      localnc.a(arrayOfxc1[i].a());
      arrayOfxc2[i] = localnc;
      this.jg.put(arrayOfxc2[i], locale);
      this.mg.put(arrayOfxc2[i], arrayOfxc1[i]);
      i++;
      if ((!bool) && (j != 0)) {
        return locale;
      }
    } while (j == 0);
    if (!bool) {
      this.hg.a(locale, arrayOfxc2);
    }
    return locale;
  }
  
  public void K()
  {
    M();
    L();
  }
  
  private void L()
  {
    boolean bool = o.eg;
    int i = o.dg;
    HashSet localHashSet = new HashSet(m());
    Object localObject1 = this.qg.b();
    if (((Iterator)localObject1).hasNext()) {}
    Object localObject2;
    while (bool)
    {
      localObject2 = ((Iterator)localObject1).next();
      localHashSet.add(localObject2);
      if (bool) {
        break label148;
      }
      if (i != 0) {
        break label142;
      }
      if (i == 0) {
        break;
      }
    }
    localObject1 = w();
    Object localObject3;
    do
    {
      if (!((m)localObject1).e()) {
        break;
      }
      localObject2 = ((m)localObject1).a();
      localObject3 = t((d)localObject2);
      if (i != 0) {
        break label138;
      }
      if (!bool)
      {
        if (!localHashSet.contains(localObject3)) {
          a((d)localObject2);
        }
        ((m)localObject1).f();
      }
    } while (i == 0);
    label138:
    localObject1 = localHashSet.iterator();
    label142:
    label148:
    do
    {
      do
      {
        if (!((Iterator)localObject1).hasNext()) {
          break;
        }
        localObject2 = ((Iterator)localObject1).next();
        localObject3 = n(localObject2);
      } while ((!bool) && ((localObject3 != null) && ((!bool) && (((d)localObject3).c() != null))));
      k(localObject2);
    } while (i == 0);
  }
  
  private void M()
  {
    boolean bool = o.eg;
    int i = o.dg;
    HashSet localHashSet = new HashSet(k());
    Object localObject1 = this.qg.a();
    if (((Iterator)localObject1).hasNext()) {}
    Object localObject2;
    while (bool)
    {
      localObject2 = ((Iterator)localObject1).next();
      localHashSet.add(localObject2);
      if (bool) {
        break label148;
      }
      if (i != 0) {
        break label142;
      }
      if (i == 0) {
        break;
      }
    }
    localObject1 = v();
    Object localObject3;
    do
    {
      if (!((a.c.w)localObject1).e()) {
        break;
      }
      localObject2 = ((a.c.w)localObject1).d();
      localObject3 = w((e)localObject2);
      if (i != 0) {
        break label138;
      }
      if (!bool)
      {
        if (!localHashSet.contains(localObject3)) {
          a((e)localObject2);
        }
        ((a.c.w)localObject1).f();
      }
    } while (i == 0);
    label138:
    localObject1 = localHashSet.iterator();
    label142:
    label148:
    do
    {
      do
      {
        if (!((Iterator)localObject1).hasNext()) {
          break;
        }
        localObject2 = ((Iterator)localObject1).next();
        localObject3 = m(localObject2);
      } while ((!bool) && ((localObject3 != null) && ((!bool) && (((e)localObject3).g() != null))));
      l(localObject2);
    } while (i == 0);
  }
  
  public zc k(e parame)
  {
    Object localObject = (zc)this.fg.get(parame);
    if (!o.eg) {
      if (localObject == null)
      {
        localObject = new sb();
        this.fg.a(parame, localObject);
      }
    }
    return localObject;
  }
  
  public zb b(d paramd)
  {
    Object localObject = (zb)this.gg.get(paramd);
    if (!o.eg) {
      if (localObject == null)
      {
        localObject = new pb();
        this.gg.a(paramd, localObject);
      }
    }
    return localObject;
  }
  
  public xc[] l(e parame)
  {
    xc[] arrayOfxc = (xc[])this.hg.get(parame);
    if (!o.eg) {
      if (arrayOfxc == null)
      {
        arrayOfxc = new xc[0];
        this.hg.a(parame, arrayOfxc);
      }
    }
    return arrayOfxc;
  }
  
  public wb[] k(d paramd)
  {
    wb[] arrayOfwb = (wb[])this.ig.get(paramd);
    if (!o.eg) {
      if (arrayOfwb == null)
      {
        arrayOfwb = new wb[0];
        this.ig.a(paramd, arrayOfwb);
      }
    }
    return arrayOfwb;
  }
  
  public e a(xc paramxc)
  {
    return (e)this.jg.get(paramxc);
  }
  
  public d a(wb paramwb)
  {
    return (d)this.kg.get(paramwb);
  }
  
  public dc O()
  {
    new dc()
    {
      public zc d(Object paramAnonymousObject)
      {
        return p.this.k((e)p.this.pg.get(paramAnonymousObject));
      }
      
      public zb e(Object paramAnonymousObject)
      {
        return p.this.b((d)p.this.pg.get(paramAnonymousObject));
      }
      
      public xc[] f(Object paramAnonymousObject)
      {
        return p.this.l((e)p.this.pg.get(paramAnonymousObject));
      }
      
      public wb[] g(Object paramAnonymousObject)
      {
        return p.this.k((d)p.this.pg.get(paramAnonymousObject));
      }
      
      public Rectangle d()
      {
        return p.this.d();
      }
    };
  }
  
  public void P()
  {
    boolean bool = o.eg;
    int m = o.dg;
    Object localObject1 = v();
    Object localObject2;
    Object localObject3;
    Object localObject4;
    Object localObject5;
    label207:
    label209:
    do
    {
      do
      {
        if (!((a.c.w)localObject1).e()) {
          break label212;
        }
        localObject2 = ((a.c.w)localObject1).d();
        localObject3 = this.lg.get(localObject2);
        if (m != 0) {
          break label213;
        }
        localObject4 = k((e)localObject2);
        if ((bool) || (localObject4 != null))
        {
          localObject5 = this.rg.d(localObject3);
          ((zc)localObject5).b(((zc)localObject4).c(), ((zc)localObject4).d());
          ((zc)localObject5).a(((zc)localObject4).a(), ((zc)localObject4).b());
        }
        localObject5 = l((e)localObject2);
        if ((bool) || (localObject5 != null))
        {
          xc[] arrayOfxc = this.rg.f(localObject3);
          int j = 0;
          do
          {
            if (j >= arrayOfxc.length) {
              break;
            }
            arrayOfxc[j].a(localObject5[j].e());
            j++;
            if (bool) {
              break label209;
            }
            if (m != 0) {
              break label207;
            }
          } while (m == 0);
        }
      } while (bool);
      ((a.c.w)localObject1).f();
    } while (m == 0);
    label212:
    label213:
    localObject1 = w();
    label223:
    do
    {
      do
      {
        if (!((m)localObject1).e()) {
          return;
        }
        localObject2 = ((m)localObject1).a();
        do
        {
          localObject3 = this.ng.get(localObject2);
          localObject4 = b((d)localObject2);
          if ((bool) || (localObject4 != null))
          {
            localObject5 = this.rg.e(localObject3);
            ((zb)localObject5).a(((zb)localObject4).c());
            ((zb)localObject5).b(((zb)localObject4).d());
            a.d.w localw;
            if (!bool)
            {
              if (((zb)localObject5).a() != ((zb)localObject4).a())
              {
                ((zb)localObject5).b();
                i = 0;
                do
                {
                  if (i >= ((zb)localObject4).a()) {
                    break label459;
                  }
                  localw = ((zb)localObject4).a(i);
                  ((zb)localObject5).a(localw.a(), localw.b());
                  i++;
                  if ((!bool) && (m != 0)) {
                    break;
                  }
                } while (m == 0);
              }
              if (bool) {
                break label223;
              }
            }
            int i = 0;
            do
            {
              if (i >= ((zb)localObject4).a()) {
                break label459;
              }
              localw = ((zb)localObject4).a(i);
              ((zb)localObject5).a(i, localw.a(), localw.b());
              i++;
              if ((!bool) && (m != 0)) {
                break;
              }
            } while (m == 0);
          }
          localObject5 = k((d)localObject2);
        } while (bool);
        if ((bool) || (localObject5 != null))
        {
          wb[] arrayOfwb = this.rg.g(localObject3);
          int k = 0;
          do
          {
            if (k >= arrayOfwb.length) {
              break;
            }
            arrayOfwb[k].a(localObject5[k].e());
            k++;
            if (bool) {
              break label555;
            }
            if (m != 0) {
              break label553;
            }
          } while (m == 0);
        }
      } while (bool);
      ((m)localObject1).f();
    } while (m == 0);
    label459:
  }
  
  public Object w(e parame)
  {
    return this.lg.get(parame);
  }
  
  public Object t(d paramd)
  {
    return this.ng.get(paramd);
  }
  
  public e m(Object paramObject)
  {
    return (e)this.pg.get(paramObject);
  }
  
  public d n(Object paramObject)
  {
    return (d)this.pg.get(paramObject);
  }
  
  public t Q()
  {
    return this.qg;
  }
  
  public dc R()
  {
    return this.rg;
  }
  
  static
  {
    a.c.q localq = new a.c.q();
    x localx = localq.B();
    sg = localx.getClass();
    localq.a(localx);
    n localn = localq.C();
    tg = localn.getClass();
    localq.a(localn);
  }
  
  class e_
    extends p.d_
  {
    e_(n paramn)
    {
      super(paramn);
    }
    
    Object a(Object paramObject)
    {
      if ((o.eg) || ((paramObject instanceof d))) {
        return p.this.ng.get(paramObject);
      }
      return null;
    }
  }
  
  class f_
    extends p.d_
  {
    f_(x paramx)
    {
      super(paramx);
    }
    
    Object a(Object paramObject)
    {
      if ((o.eg) || ((paramObject instanceof e))) {
        return p.this.lg.get(paramObject);
      }
      return null;
    }
  }
  
  class d_
    extends p.c_
    implements i
  {
    i b;
    
    d_(k paramk)
    {
      super(paramk);
      this.b = ((i)paramk);
    }
    
    public void a(Object paramObject1, Object paramObject2)
    {
      Object localObject = a(paramObject1);
      if (localObject != null) {
        this.b.a(localObject, paramObject2);
      }
    }
    
    public void a(Object paramObject, int paramInt)
    {
      Object localObject = a(paramObject);
      if (localObject != null) {
        this.b.a(localObject, paramInt);
      }
    }
    
    public void a(Object paramObject, double paramDouble)
    {
      Object localObject = a(paramObject);
      if (localObject != null) {
        this.b.a(localObject, paramDouble);
      }
    }
    
    public void a(Object paramObject, boolean paramBoolean)
    {
      Object localObject = a(paramObject);
      if (localObject != null) {
        this.b.a(localObject, paramBoolean);
      }
    }
  }
  
  class c_
    implements k
  {
    k a;
    
    c_(k paramk)
    {
      this.a = paramk;
    }
    
    public Object get(Object paramObject)
    {
      Object localObject = a(paramObject);
      if ((o.eg) || (localObject != null)) {
        return this.a.get(localObject);
      }
      return null;
    }
    
    public int getInt(Object paramObject)
    {
      Object localObject = a(paramObject);
      if (localObject != null) {
        return this.a.getInt(localObject);
      }
      return 0;
    }
    
    public double getDouble(Object paramObject)
    {
      Object localObject = a(paramObject);
      if (localObject != null) {
        return this.a.getDouble(localObject);
      }
      return 0.0D;
    }
    
    public boolean getBool(Object paramObject)
    {
      Object localObject = a(paramObject);
      if (localObject != null) {
        return this.a.getBool(localObject);
      }
      return false;
    }
    
    Object a(Object paramObject)
    {
      boolean bool = o.eg;
      if (!bool) {
        if ((paramObject instanceof e)) {
          return p.this.lg.get(paramObject);
        }
      }
      if (!bool) {
        if ((paramObject instanceof d)) {
          return p.this.ng.get(paramObject);
        }
      }
      if (!bool)
      {
        if ((paramObject instanceof xc)) {
          return p.this.mg.get(paramObject);
        }
        if (bool) {}
      }
      else if ((paramObject instanceof wb))
      {
        return p.this.og.get(paramObject);
      }
      return paramObject;
    }
  }
}



/* Location:           E:\idea\

 * Qualified Name:     a.f.p

 * JD-Core Version:    0.7.0.1

 */